package com.txby.platformCore.data.shop;

import java.util.Arrays;
import java.util.HashMap;
import java.util.List;

import lombok.Data;

/**
 * 自定义微信查询订单返回模型
* @ClassName: AliOrderQueryCusReturnModel 
* @Description: TODO(这里用一句话描述这个类的作用) 
* @author jacking
* @date 2017年11月17日 上午10:01:40 
*
 */
@Data
public class WxOrderQueryCusReturnModel extends HashMap<String, Object> {
	public static  List<String> tradeStatusList=Arrays.asList("NOTPAY","SUCCESS","REFUND","CLOSED","REVOKED","USERPAYING","PAYERROR");
	/**
	 * 订单号
	 */
	private String out_trade_no;
	/**
	 * 订单支付标识：
	 * NOTPAY 为未支付
	 * SUCCESS为已支付
	 * 
	 * SUCCESS—支付成功 
		REFUND—转入退款 
		NOTPAY—未支付 
		CLOSED—已关闭 
		REVOKED—已撤销（刷卡支付） 
		USERPAYING--用户支付中 
		PAYERROR--支付失败(其他原因，如银行返回失败)
		支付状态机请见下单API页面 
	 */
	private String trade_state;
	/**
	 * 订单支付标识之描述
	 */
	private String trade_state_desc;
	/**
	 * 业务结果
	 * SUCCESS/FAIL
	 */
	private String result_code;
	
	/**
	 * 通信结果
	 * SUCCESS/FAIL
	 */
	private String return_code;
	/**
	 * 是否返回成功标识
	 * SUCCESS/FAIL
	 */
	private boolean isOK ;
	
	
	
	
	

	/** 
	* @return isOK 
	*/
	public boolean isOK() {
		return return_code!=null&&return_code.equals("SUCCESS");
	}

	public WxOrderQueryCusReturnModel() {
	}

	
	
	/** 
	* @return out_trade_no 
	*/
	public String getOut_trade_no() {
		return super.get("out_trade_no") == null ? out_trade_no : super.get("out_trade_no").toString();
	}

	/** 
	* @param out_trade_no 要设置的 out_trade_no 
	*/
	public void setOut_trade_no(String out_trade_no) {
		put("out_trade_no", out_trade_no);
		this.out_trade_no = out_trade_no;
	}

	/** 
	* @return trade_state 
	*/
	public String getTrade_state() {
		return super.get("trade_state") == null ? trade_state : super.get("trade_state").toString();
	}

	/** 
	* @param trade_state 要设置的 trade_state 
	*/
	public void setTrade_state(String trade_state) {
		put("trade_state", trade_state);
		this.trade_state = trade_state;
	}

	/** 
	* @return trade_state_desc 
	*/
	public String getTrade_state_desc() {
		return super.get("trade_state_desc") == null ? trade_state_desc : super.get("trade_state_desc").toString();
	}

	/** 
	* @param trade_state_desc 要设置的 trade_state_desc 
	*/
	public void setTrade_state_desc(String trade_state_desc) {
		this.trade_state_desc = trade_state_desc;
		put("trade_state_desc", trade_state_desc);
	}

	/** 
	* @return result_code 
	*/
	public String getResult_code() {
		return super.get("result_code") == null ? result_code : super.get("result_code").toString();
	}

	/** 
	* @param result_code 要设置的 result_code 
	*/
	public void setResult_code(String result_code) {
		this.result_code = result_code;
		put("result_code", result_code);
	}

	/** 
	* @return return_code 
	*/
	public String getReturn_code() {
		return super.get("return_code") == null ? return_code : super.get("return_code").toString();
	}

	/** 
	* @param return_code 要设置的 return_code 
	*/
	public void setReturn_code(String return_code) {
		this.return_code = return_code;
		put("return_code", return_code);
	}

	/** 
	* @param isOK 要设置的 isOK 
	*/
	public void setOK(boolean isOK) {
		this.isOK = isOK;
		put("isOK", isOK);
	}

}
